package cn.com.w.bootdemo.constat;

public enum PaymentEnum {

    // 微信
    weiXin(1, "callWeiXinInterface"),
    // 支付宝
    zhiFuBao(2, "callZhiFuBaoInterface"),
    // 银行卡
    yinHangKa(3, "callYinHangKaInterface"),
    // 其他
    other(4, "callOtherInterface");



    private int code; // 代码
    private String name; // 名称，描述

    /**
     * 构造函数
     *
     * @param code
     * @param name
     */
    PaymentEnum(int code, String name) {
        this.code = code;
        this.name = name;
    }

    public int getCode() {
        return code;
    }

    public void setCode(int code) {
        this.code = code;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    /**
     * 根据code属性获取name属性
     *
     * @param code
     * @return
     */
    public static String getNameByCode(int code) {
        for (PaymentEnum temp : PaymentEnum.values()) {
            if (temp.getCode() == code) {
                return temp.getName();
            }
        }
        return null;
    }

    /**
     * 根据name属性获取code属性
     *
     * @param name
     * @return
     */
    public static int getCodeByName(String name) {
        for (PaymentEnum temp : PaymentEnum.values()) {
            if (name.equals(temp.getName())) {
                return temp.getCode();
            }
        }
        return 0;
    }
}
